[INFO] fetching crate tgbr 0.4.0...
[INFO] checking tgbr-0.4.0 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate tgbr 0.4.0 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate tgbr 0.4.0 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate tgbr 0.4.0
[INFO] finished tweaking crates.io crate tgbr 0.4.0
[INFO] tweaked toml for crates.io crate tgbr 0.4.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded meru-interface v0.3.0
[INFO] [stderr]   Downloaded base64-serde v0.6.1
[INFO] [stderr]   Downloaded ambassador v0.3.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 09a4f2f52722f988891202e8cba945814d4f781b5b72e581f5b290a01aeed7ed
[INFO] running `Command { std: "docker" "start" "-a" "09a4f2f52722f988891202e8cba945814d4f781b5b72e581f5b290a01aeed7ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "09a4f2f52722f988891202e8cba945814d4f781b5b72e581f5b290a01aeed7ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "09a4f2f52722f988891202e8cba945814d4f781b5b72e581f5b290a01aeed7ed", kill_on_drop: false }`
[INFO] [stdout] 09a4f2f52722f988891202e8cba945814d4f781b5b72e581f5b290a01aeed7ed
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 015cd683842e0b9e5d00e6f958bc52e3a4f1cf9fb338b51009b285043406bc76
[INFO] running `Command { std: "docker" "start" "-a" "015cd683842e0b9e5d00e6f958bc52e3a4f1cf9fb338b51009b285043406bc76", kill_on_drop: false }`
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling schemars v0.8.16
[INFO] [stderr]     Checking serde v1.0.197
[INFO] [stderr]    Compiling either v1.10.0
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]     Checking funty v2.0.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling anyhow v1.0.80
[INFO] [stderr]     Checking bytesize v1.3.0
[INFO] [stderr]     Checking bitvec v1.0.1
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]    Compiling ambassador v0.3.6
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking serde_bytes v0.11.14
[INFO] [stderr]     Checking chrono v0.4.34
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking meru-interface v0.3.0
[INFO] [stderr]     Checking tgbr v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gameboy.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut audio_buffer = self.ctx.apu_mut().audio_buffer_mut();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gameboy.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut audio_buffer = self.ctx.apu_mut().audio_buffer_mut();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.31s
[INFO] running `Command { std: "docker" "inspect" "015cd683842e0b9e5d00e6f958bc52e3a4f1cf9fb338b51009b285043406bc76", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "015cd683842e0b9e5d00e6f958bc52e3a4f1cf9fb338b51009b285043406bc76", kill_on_drop: false }`
[INFO] [stdout] 015cd683842e0b9e5d00e6f958bc52e3a4f1cf9fb338b51009b285043406bc76
[INFO] checking tgbr-0.4.0 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate tgbr 0.4.0 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate tgbr 0.4.0 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate tgbr 0.4.0
[INFO] finished tweaking crates.io crate tgbr 0.4.0
[INFO] tweaked toml for crates.io crate tgbr 0.4.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] df88d336a1d2005dba8622b27531ee8d77e074829bc079c0197cb152cb40f022
[INFO] running `Command { std: "docker" "start" "-a" "df88d336a1d2005dba8622b27531ee8d77e074829bc079c0197cb152cb40f022", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "df88d336a1d2005dba8622b27531ee8d77e074829bc079c0197cb152cb40f022", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "df88d336a1d2005dba8622b27531ee8d77e074829bc079c0197cb152cb40f022", kill_on_drop: false }`
[INFO] [stdout] df88d336a1d2005dba8622b27531ee8d77e074829bc079c0197cb152cb40f022
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 23a1639a968c47eb935c338108932fe8342ac483c8d3ebe7447f773f455bcc0a
[INFO] running `Command { std: "docker" "start" "-a" "23a1639a968c47eb935c338108932fe8342ac483c8d3ebe7447f773f455bcc0a", kill_on_drop: false }`
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling schemars v0.8.16
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]     Checking serde v1.0.197
[INFO] [stderr]     Checking tap v1.0.1
[INFO] [stderr]    Compiling either v1.10.0
[INFO] [stderr]     Checking wyz v0.5.1
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]     Checking funty v2.0.0
[INFO] [stderr]    Compiling anyhow v1.0.80
[INFO] [stderr]     Checking bytesize v1.3.0
[INFO] [stderr]     Checking bitvec v1.0.1
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]    Compiling ambassador v0.3.6
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking chrono v0.4.34
[INFO] [stderr]     Checking serde_bytes v0.11.14
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking meru-interface v0.3.0
[INFO] [stderr]     Checking tgbr v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:180:17
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 4..=6 => self.channel_ctrl[1].volume,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:182:17
[INFO] [stdout]     |
[INFO] [stdout] 182 |                 0..=2 => self.channel_ctrl[0].volume,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |                 4..=6 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:212:17
[INFO] [stdout]     |
[INFO] [stdout] 212 |                 4..=7 => self.pulse[1].level(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:213:17
[INFO] [stdout]     |
[INFO] [stdout] 213 |                 0..=3 => self.pulse[0].level(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:217:17
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 4..=7 => self.noise.level(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:218:17
[INFO] [stdout]     |
[INFO] [stdout] 218 |                 0..=3 => self.wave.level(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:247:49
[INFO] [stdout]     |
[INFO] [stdout] 247 |                 self.channel_ctrl[1].volume = v[4..=6].load();
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:249:49
[INFO] [stdout]     |
[INFO] [stdout] 249 |                 self.channel_ctrl[0].volume = v[0..=2].load();
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:346:17
[INFO] [stdout]     |
[INFO] [stdout] 346 |                 4..=6 => self.sweep_period,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:348:17
[INFO] [stdout]     |
[INFO] [stdout] 348 |                 0..=2 => self.sweep_shift,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:352:24
[INFO] [stdout]     |
[INFO] [stdout] 352 |             1 => pack!(6..=7 => self.duty, 0..=5 => !0),
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:352:44
[INFO] [stdout]     |
[INFO] [stdout] 352 |             1 => pack!(6..=7 => self.duty, 0..=5 => !0),
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:355:17
[INFO] [stdout]     |
[INFO] [stdout] 355 |                 4..=7 => self.initial_volume,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:357:17
[INFO] [stdout]     |
[INFO] [stdout] 357 |                 0..=2 => self.envelope_period,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:366:17
[INFO] [stdout]     |
[INFO] [stdout] 366 |                 0..=5 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:379:39
[INFO] [stdout]     |
[INFO] [stdout] 379 |                 self.sweep_period = v[4..=6].load();
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:381:38
[INFO] [stdout]     |
[INFO] [stdout] 381 |                 self.sweep_shift = v[0..=2].load();
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:395:31
[INFO] [stdout]     |
[INFO] [stdout] 395 |                 self.duty = v[6..=7].load();
[INFO] [stdout]     |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:396:38
[INFO] [stdout]     |
[INFO] [stdout] 396 |                 self.length = 64 - v[0..=5].load::<u8>();
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:401:41
[INFO] [stdout]     |
[INFO] [stdout] 401 |                 self.initial_volume = v[4..=7].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:403:42
[INFO] [stdout]     |
[INFO] [stdout] 403 |                 self.envelope_period = v[0..=2].load();
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:406:57
[INFO] [stdout]     |
[INFO] [stdout] 406 |             3 => self.frequency.view_bits_mut::<Lsb0>()[0..=7].store(data),
[INFO] [stdout]     |                                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:410:56
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 self.frequency.view_bits_mut::<Lsb0>()[8..=10].store(v[0..=2].load::<u16>());
[INFO] [stdout]     |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:410:72
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 self.frequency.view_bits_mut::<Lsb0>()[8..=10].store(v[0..=2].load::<u16>());
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:618:42
[INFO] [stdout]     |
[INFO] [stdout] 618 |             0 => pack!(7 => self.enable, 0..=6 => !0),
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:622:24
[INFO] [stdout]     |
[INFO] [stdout] 622 |             2 => pack!(5..=6 => self.output_level, 7 => true, 0..=4 => !0),
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:622:63
[INFO] [stdout]     |
[INFO] [stdout] 622 |             2 => pack!(5..=6 => self.output_level, 7 => true, 0..=4 => !0),
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:627:60
[INFO] [stdout]     |
[INFO] [stdout] 627 |             4 => pack!(6 => self.length_enable, 7 => true, 0..=5 => !0),
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:639:63
[INFO] [stdout]     |
[INFO] [stdout] 639 |             2 => self.output_level = data.view_bits::<Lsb0>()[5..=6].load(),
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:641:57
[INFO] [stdout]     |
[INFO] [stdout] 641 |             3 => self.frequency.view_bits_mut::<Lsb0>()[0..=7].store(data),
[INFO] [stdout]     |                                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:645:56
[INFO] [stdout]     |
[INFO] [stdout] 645 |                 self.frequency.view_bits_mut::<Lsb0>()[8..=10].store(v[0..=2].load::<u16>());
[INFO] [stdout]     |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:645:72
[INFO] [stdout]     |
[INFO] [stdout] 645 |                 self.frequency.view_bits_mut::<Lsb0>()[8..=10].store(v[0..=2].load::<u16>());
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:781:17
[INFO] [stdout]     |
[INFO] [stdout] 781 |                 4..=7 => self.initial_volume,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:783:17
[INFO] [stdout]     |
[INFO] [stdout] 783 |                 0..=2 => self.envelope_period,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:787:17
[INFO] [stdout]     |
[INFO] [stdout] 787 |                 4..=7 => self.clock_shift,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:789:17
[INFO] [stdout]     |
[INFO] [stdout] 789 |                 0..=2 => self.divisor_code,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:793:60
[INFO] [stdout]     |
[INFO] [stdout] 793 |             3 => pack!(6 => self.length_enable, 7 => true, 0..=5 => !0),
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:801:62
[INFO] [stdout]     |
[INFO] [stdout] 801 |             0 => self.length = 64 - data.view_bits::<Lsb0>()[0..=5].load::<u8>(),
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:805:41
[INFO] [stdout]     |
[INFO] [stdout] 805 |                 self.initial_volume = v[4..=7].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:807:42
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 self.envelope_period = v[0..=2].load();
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:812:38
[INFO] [stdout]     |
[INFO] [stdout] 812 |                 self.clock_shift = v[4..=7].load();
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:814:39
[INFO] [stdout]     |
[INFO] [stdout] 814 |                 self.divisor_code = v[0..=2].load();
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:166:25
[INFO] [stdout]     |
[INFO] [stdout] 166 |                         7..=7 => self.current_speed,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:167:25
[INFO] [stdout]     |
[INFO] [stdout] 167 |                         1..=6 => !0,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:168:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         0..=0 => self.prepare_speed_switch,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:179:27
[INFO] [stdout]     |
[INFO] [stdout] 179 |                     pack!(0..=0 => self.vram_bank, 1..=7 => !0)
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:179:52
[INFO] [stdout]     |
[INFO] [stdout] 179 |                     pack!(0..=0 => self.vram_bank, 1..=7 => !0)
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:207:25
[INFO] [stdout]     |
[INFO] [stdout] 207 |                         0..=6 => self.hdma.length,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:216:27
[INFO] [stdout]     |
[INFO] [stdout] 216 |                     pack!(0..=2 => self.ram_bank, 3..=7 => !0)
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:216:51
[INFO] [stdout]     |
[INFO] [stdout] 216 |                     pack!(0..=2 => self.ram_bank, 3..=7 => !0)
[INFO] [stdout]     |                                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:226:17
[INFO] [stdout]     |
[INFO] [stdout] 226 |                 7..=7 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:227:17
[INFO] [stdout]     |
[INFO] [stdout] 227 |                 4..=6 => self.reg_ff75,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:228:17
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 0..=3 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:270:63
[INFO] [stdout]     |
[INFO] [stdout] 270 |                     let mode = match data.view_bits::<Lsb0>()[2..=3].load::<u8>() {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:306:62
[INFO] [stdout]     |
[INFO] [stdout] 306 |                     self.hdma.source.view_bits_mut::<Lsb0>()[8..=15].store(data);
[INFO] [stdout]     |                                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:314:62
[INFO] [stdout]     |
[INFO] [stdout] 314 |                     self.hdma.source.view_bits_mut::<Lsb0>()[0..=7].store(data & !0xf);
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:322:60
[INFO] [stdout]     |
[INFO] [stdout] 322 |                     self.hdma.dest.view_bits_mut::<Lsb0>()[8..=12].store(data & 0x1f);
[INFO] [stdout]     |                                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:330:60
[INFO] [stdout]     |
[INFO] [stdout] 330 |                     self.hdma.dest.view_bits_mut::<Lsb0>()[0..=7].store(data & !0xf);
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:348:46
[INFO] [stdout]     |
[INFO] [stdout] 348 |                         self.hdma.length = v[0..=6].load();
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:352:46
[INFO] [stdout]     |
[INFO] [stdout] 352 |                         self.hdma.length = v[0..=6].load();
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:371:61
[INFO] [stdout]     |
[INFO] [stdout] 371 |             0xFF75 => self.reg_ff75.view_bits_mut::<Lsb0>()[4..=6]
[INFO] [stdout]     |                                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:372:49
[INFO] [stdout]     |
[INFO] [stdout] 372 |                 .store(data.view_bits::<Lsb0>()[4..=6].load::<u8>()),
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/bus.rs:459:22
[INFO] [stdout]     |
[INFO] [stdout] 459 |             for i in 0..16 {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]  --> src/consts.rs:7:39
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const VISIBLE_RANGE: Range<u64> = 0..144;
[INFO] [stdout]   |                                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/context.rs:213:18
[INFO] [stdout]     |
[INFO] [stdout] 213 |         for _ in 0..if speed == 0 { 4 } else { 2 } {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/gameboy.rs:285:18
[INFO] [stdout]     |
[INFO] [stdout] 285 |         for y in 0..height {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/gameboy.rs:286:22
[INFO] [stdout]     |
[INFO] [stdout] 286 |             for x in 0..width {
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/io.rs:104:18
[INFO] [stdout]     |
[INFO] [stdout] 104 |         for i in 0..4 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |                     6..=7 => !0,
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |                 3..=7 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:166:17
[INFO] [stdout]     |
[INFO] [stdout] 166 |                 0..=1 => self.input_clock_select,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:170:17
[INFO] [stdout]     |
[INFO] [stdout] 170 |                 5..=7 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:171:17
[INFO] [stdout]     |
[INFO] [stdout] 171 |                 0..=4 => ctx.interrupt_flag(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:175:17
[INFO] [stdout]     |
[INFO] [stdout] 175 |                 0..=7 => ctx.interrupt_enable(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:232:45
[INFO] [stdout]     |
[INFO] [stdout] 232 |                 self.input_clock_select = v[0..=1].load();
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc1.rs:79:55
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 self.rom_bank.view_bits_mut::<Lsb0>()[0..=4].store(max(1, data & 0x1F));
[INFO] [stdout]    |                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc2.rs:69:27
[INFO] [stdout]    |
[INFO] [stdout] 69 |                         v[0..=3].store(data & 0xF);
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc2.rs:71:27
[INFO] [stdout]    |
[INFO] [stdout] 71 |                         v[4..=7].store(data & 0xF);
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc3.rs:68:33
[INFO] [stdout]    |
[INFO] [stdout] 68 | ...                   0..=0 => (self.clock_data_latch.num_days_from_ce() >> 8) & 1,
[INFO] [stdout]    |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc3.rs:69:33
[INFO] [stdout]    |
[INFO] [stdout] 69 | ...                   1..=5 => !0,
[INFO] [stdout]    |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc3.rs:92:28
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 } else if (8..=0xC).contains(&data) {
[INFO] [stdout]    |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc5.rs:54:70
[INFO] [stdout]    |
[INFO] [stdout] 54 |             0x2000..=0x2FFF => self.rom_bank.view_bits_mut::<Lsb0>()[0..=7].store(data),
[INFO] [stdout]    |                                                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc5.rs:55:70
[INFO] [stdout]    |
[INFO] [stdout] 55 |             0x3000..=0x3FFF => self.rom_bank.view_bits_mut::<Lsb0>()[8..=8].store(data & 1),
[INFO] [stdout]    |                                                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:222:17
[INFO] [stdout]     |
[INFO] [stdout] 222 |                 0..=1 => self.mode as u8,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:234:17
[INFO] [stdout]     |
[INFO] [stdout] 234 |                 6..=7 => self.bg_pal[3],
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:235:17
[INFO] [stdout]     |
[INFO] [stdout] 235 |                 4..=5 => self.bg_pal[2],
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:236:17
[INFO] [stdout]     |
[INFO] [stdout] 236 |                 2..=3 => self.bg_pal[1],
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:237:17
[INFO] [stdout]     |
[INFO] [stdout] 237 |                 0..=1 => self.bg_pal[0],
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:243:21
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     6..=7 => self.obj_pal[ix][3],
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:244:21
[INFO] [stdout]     |
[INFO] [stdout] 244 |                     4..=5 => self.obj_pal[ix][2],
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:245:21
[INFO] [stdout]     |
[INFO] [stdout] 245 |                     2..=3 => self.obj_pal[ix][1],
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:246:21
[INFO] [stdout]     |
[INFO] [stdout] 246 |                     0..=1 => self.obj_pal[ix][0],
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:260:25
[INFO] [stdout]     |
[INFO] [stdout] 260 |                         0..=5 => self.bg_col_pal_addr,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:280:25
[INFO] [stdout]     |
[INFO] [stdout] 280 |                         0..=5 => self.obj_col_pal_addr,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:362:36
[INFO] [stdout]     |
[INFO] [stdout] 362 |                 self.bg_pal[3] = v[6..=7].load();
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:363:36
[INFO] [stdout]     |
[INFO] [stdout] 363 |                 self.bg_pal[2] = v[4..=5].load();
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:364:36
[INFO] [stdout]     |
[INFO] [stdout] 364 |                 self.bg_pal[1] = v[2..=3].load();
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:365:36
[INFO] [stdout]     |
[INFO] [stdout] 365 |                 self.bg_pal[0] = v[0..=1].load();
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:371:41
[INFO] [stdout]     |
[INFO] [stdout] 371 |                 self.obj_pal[ix][3] = v[6..=7].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:372:41
[INFO] [stdout]     |
[INFO] [stdout] 372 |                 self.obj_pal[ix][2] = v[4..=5].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:373:41
[INFO] [stdout]     |
[INFO] [stdout] 373 |                 self.obj_pal[ix][1] = v[2..=3].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:374:41
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 self.obj_pal[ix][0] = v[0..=1].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:395:46
[INFO] [stdout]     |
[INFO] [stdout] 395 |                     self.bg_col_pal_addr = v[0..=5].load();
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:416:47
[INFO] [stdout]     |
[INFO] [stdout] 416 |                     self.obj_col_pal_addr = v[0..=5].load();
[INFO] [stdout]     |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:458:15
[INFO] [stdout]     |
[INFO] [stdout] 458 |     let r = v[0..=4].load::<u8>();
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:459:15
[INFO] [stdout]     |
[INFO] [stdout] 459 |     let g = v[5..=9].load::<u8>();
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:460:15
[INFO] [stdout]     |
[INFO] [stdout] 460 |     let b = v[10..=14].load::<u8>();
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:489:22
[INFO] [stdout]     |
[INFO] [stdout] 489 |             for x in 0..SCREEN_WIDTH as usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:493:22
[INFO] [stdout]     |
[INFO] [stdout] 493 |             for x in 0..SCREEN_WIDTH as usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:531:22
[INFO] [stdout]     |
[INFO] [stdout] 531 |         for scr_x in 0..SCREEN_WIDTH as u8 {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:570:41
[INFO] [stdout]     |
[INFO] [stdout] 570 |             let pal_num: u8 = tile_attr[0..=2].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:585:56
[INFO] [stdout]     |
[INFO] [stdout] 585 |                     u16::from_le_bytes(self.bg_col_pal[b..b + 2].try_into().unwrap());
[INFO] [stdout]     |                                                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:589:56
[INFO] [stdout]     |
[INFO] [stdout] 589 |                     u16::from_le_bytes(self.bg_col_pal[pal_ix..pal_ix + 2].try_into().unwrap());
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:623:18
[INFO] [stdout]     |
[INFO] [stdout] 623 |         for i in 0..40 {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:624:26
[INFO] [stdout]     |
[INFO] [stdout] 624 |             let r = &oam[i * 4..(i + 1) * 4];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:627:17
[INFO] [stdout]     |
[INFO] [stdout] 627 |             if (y..y + obj_size).contains(&(self.ly + 16)) {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:637:25
[INFO] [stdout]     |
[INFO] [stdout] 637 |             render_objs[0..obj_count].sort_unstable();
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:180:17
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 4..=6 => self.channel_ctrl[1].volume,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:640:37
[INFO] [stdout]     |
[INFO] [stdout] 640 |         for &(_, i) in &render_objs[0..obj_count] {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:182:17
[INFO] [stdout]     |
[INFO] [stdout] 182 |                 0..=2 => self.channel_ctrl[0].volume,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:641:26
[INFO] [stdout]     |
[INFO] [stdout] 641 |             let r = &oam[i * 4..(i + 1) * 4];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |                 4..=6 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:212:17
[INFO] [stdout]     |
[INFO] [stdout] 212 |                 4..=7 => self.pulse[1].level(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:653:20
[INFO] [stdout]     |
[INFO] [stdout] 653 |                 (v[0..=2].load(), if v[3] { 0x2000 } else { 0 })
[INFO] [stdout]     |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:213:17
[INFO] [stdout]     |
[INFO] [stdout] 213 |                 0..=3 => self.pulse[0].level(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:217:17
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 4..=7 => self.noise.level(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:218:17
[INFO] [stdout]     |
[INFO] [stdout] 218 |                 0..=3 => self.wave.level(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:247:49
[INFO] [stdout]     |
[INFO] [stdout] 247 |                 self.channel_ctrl[1].volume = v[4..=6].load();
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:678:26
[INFO] [stdout]     |
[INFO] [stdout] 678 |             for ofs_x in 0..8 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:249:49
[INFO] [stdout]     |
[INFO] [stdout] 249 |                 self.channel_ctrl[0].volume = v[0..=2].load();
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:680:22
[INFO] [stdout]     |
[INFO] [stdout] 680 |                 if !(8..w + 8).contains(&scr_x) {
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:699:69
[INFO] [stdout]     |
[INFO] [stdout] 699 | ...                   u16::from_le_bytes(self.obj_col_pal[b..b + 2].try_into().unwrap());
[INFO] [stdout]     |                                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:703:50
[INFO] [stdout]     |
[INFO] [stdout] 703 | ...                   self.obj_col_pal[pal_ix..pal_ix + 2].try_into().unwrap(),
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:219:29
[INFO] [stdout]     |
[INFO] [stdout] 219 |         let header = &bytes[0x100..=0x14f];
[INFO] [stdout]     |                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:346:17
[INFO] [stdout]     |
[INFO] [stdout] 346 |                 4..=6 => self.sweep_period,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:221:53
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let title = String::from_utf8_lossy(&header[0x34..=0x43]).to_string();
[INFO] [stdout]     |                                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:348:17
[INFO] [stdout]     |
[INFO] [stdout] 348 |                 0..=2 => self.sweep_shift,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:223:49
[INFO] [stdout]     |
[INFO] [stdout] 223 |         let manufacturer_code: [u8; 4] = header[0x3f..=0x42].try_into().unwrap();
[INFO] [stdout]     |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:230:49
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let new_licensee_code: [u8; 2] = header[0x44..=0x45].try_into().unwrap();
[INFO] [stdout]     |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:352:24
[INFO] [stdout]     |
[INFO] [stdout] 352 |             1 => pack!(6..=7 => self.duty, 0..=5 => !0),
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:352:44
[INFO] [stdout]     |
[INFO] [stdout] 352 |             1 => pack!(6..=7 => self.duty, 0..=5 => !0),
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:282:30
[INFO] [stdout]     |
[INFO] [stdout] 282 |         for &byte in &header[0x34..=0x4c] {
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:355:17
[INFO] [stdout]     |
[INFO] [stdout] 355 |                 4..=7 => self.initial_volume,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:357:17
[INFO] [stdout]     |
[INFO] [stdout] 357 |                 0..=2 => self.envelope_period,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:366:17
[INFO] [stdout]     |
[INFO] [stdout] 366 |                 0..=5 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:294:18
[INFO] [stdout]     |
[INFO] [stdout] 294 |             if !(0x14e..=0x14f).contains(&i) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:379:39
[INFO] [stdout]     |
[INFO] [stdout] 379 |                 self.sweep_period = v[4..=6].load();
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:381:38
[INFO] [stdout]     |
[INFO] [stdout] 381 |                 self.sweep_shift = v[0..=2].load();
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:395:31
[INFO] [stdout]     |
[INFO] [stdout] 395 |                 self.duty = v[6..=7].load();
[INFO] [stdout]     |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:396:38
[INFO] [stdout]     |
[INFO] [stdout] 396 |                 self.length = 64 - v[0..=5].load::<u8>();
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:401:41
[INFO] [stdout]     |
[INFO] [stdout] 401 |                 self.initial_volume = v[4..=7].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:403:42
[INFO] [stdout]     |
[INFO] [stdout] 403 |                 self.envelope_period = v[0..=2].load();
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:406:57
[INFO] [stdout]     |
[INFO] [stdout] 406 |             3 => self.frequency.view_bits_mut::<Lsb0>()[0..=7].store(data),
[INFO] [stdout]     |                                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:410:56
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 self.frequency.view_bits_mut::<Lsb0>()[8..=10].store(v[0..=2].load::<u16>());
[INFO] [stdout]     |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:410:72
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 self.frequency.view_bits_mut::<Lsb0>()[8..=10].store(v[0..=2].load::<u16>());
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/serial.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |             1..=6 => !0,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:618:42
[INFO] [stdout]     |
[INFO] [stdout] 618 |             0 => pack!(7 => self.enable, 0..=6 => !0),
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:622:24
[INFO] [stdout]     |
[INFO] [stdout] 622 |             2 => pack!(5..=6 => self.output_level, 7 => true, 0..=4 => !0),
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:622:63
[INFO] [stdout]     |
[INFO] [stdout] 622 |             2 => pack!(5..=6 => self.output_level, 7 => true, 0..=4 => !0),
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:627:60
[INFO] [stdout]     |
[INFO] [stdout] 627 |             4 => pack!(6 => self.length_enable, 7 => true, 0..=5 => !0),
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:639:63
[INFO] [stdout]     |
[INFO] [stdout] 639 |             2 => self.output_level = data.view_bits::<Lsb0>()[5..=6].load(),
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:641:57
[INFO] [stdout]     |
[INFO] [stdout] 641 |             3 => self.frequency.view_bits_mut::<Lsb0>()[0..=7].store(data),
[INFO] [stdout]     |                                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:645:56
[INFO] [stdout]     |
[INFO] [stdout] 645 |                 self.frequency.view_bits_mut::<Lsb0>()[8..=10].store(v[0..=2].load::<u16>());
[INFO] [stdout]     |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:645:72
[INFO] [stdout]     |
[INFO] [stdout] 645 |                 self.frequency.view_bits_mut::<Lsb0>()[8..=10].store(v[0..=2].load::<u16>());
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:781:17
[INFO] [stdout]     |
[INFO] [stdout] 781 |                 4..=7 => self.initial_volume,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:783:17
[INFO] [stdout]     |
[INFO] [stdout] 783 |                 0..=2 => self.envelope_period,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:787:17
[INFO] [stdout]     |
[INFO] [stdout] 787 |                 4..=7 => self.clock_shift,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:789:17
[INFO] [stdout]     |
[INFO] [stdout] 789 |                 0..=2 => self.divisor_code,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:793:60
[INFO] [stdout]     |
[INFO] [stdout] 793 |             3 => pack!(6 => self.length_enable, 7 => true, 0..=5 => !0),
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:801:62
[INFO] [stdout]     |
[INFO] [stdout] 801 |             0 => self.length = 64 - data.view_bits::<Lsb0>()[0..=5].load::<u8>(),
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:805:41
[INFO] [stdout]     |
[INFO] [stdout] 805 |                 self.initial_volume = v[4..=7].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:807:42
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 self.envelope_period = v[0..=2].load();
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:812:38
[INFO] [stdout]     |
[INFO] [stdout] 812 |                 self.clock_shift = v[4..=7].load();
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/apu.rs:814:39
[INFO] [stdout]     |
[INFO] [stdout] 814 |                 self.divisor_code = v[0..=2].load();
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:166:25
[INFO] [stdout]     |
[INFO] [stdout] 166 |                         7..=7 => self.current_speed,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:167:25
[INFO] [stdout]     |
[INFO] [stdout] 167 |                         1..=6 => !0,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:168:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                         0..=0 => self.prepare_speed_switch,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:179:27
[INFO] [stdout]     |
[INFO] [stdout] 179 |                     pack!(0..=0 => self.vram_bank, 1..=7 => !0)
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:179:52
[INFO] [stdout]     |
[INFO] [stdout] 179 |                     pack!(0..=0 => self.vram_bank, 1..=7 => !0)
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:207:25
[INFO] [stdout]     |
[INFO] [stdout] 207 |                         0..=6 => self.hdma.length,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:216:27
[INFO] [stdout]     |
[INFO] [stdout] 216 |                     pack!(0..=2 => self.ram_bank, 3..=7 => !0)
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:216:51
[INFO] [stdout]     |
[INFO] [stdout] 216 |                     pack!(0..=2 => self.ram_bank, 3..=7 => !0)
[INFO] [stdout]     |                                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:226:17
[INFO] [stdout]     |
[INFO] [stdout] 226 |                 7..=7 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:227:17
[INFO] [stdout]     |
[INFO] [stdout] 227 |                 4..=6 => self.reg_ff75,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:228:17
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 0..=3 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:270:63
[INFO] [stdout]     |
[INFO] [stdout] 270 |                     let mode = match data.view_bits::<Lsb0>()[2..=3].load::<u8>() {
[INFO] [stdout]     |                                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:306:62
[INFO] [stdout]     |
[INFO] [stdout] 306 |                     self.hdma.source.view_bits_mut::<Lsb0>()[8..=15].store(data);
[INFO] [stdout]     |                                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:314:62
[INFO] [stdout]     |
[INFO] [stdout] 314 |                     self.hdma.source.view_bits_mut::<Lsb0>()[0..=7].store(data & !0xf);
[INFO] [stdout]     |                                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:322:60
[INFO] [stdout]     |
[INFO] [stdout] 322 |                     self.hdma.dest.view_bits_mut::<Lsb0>()[8..=12].store(data & 0x1f);
[INFO] [stdout]     |                                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:330:60
[INFO] [stdout]     |
[INFO] [stdout] 330 |                     self.hdma.dest.view_bits_mut::<Lsb0>()[0..=7].store(data & !0xf);
[INFO] [stdout]     |                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:348:46
[INFO] [stdout]     |
[INFO] [stdout] 348 |                         self.hdma.length = v[0..=6].load();
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:352:46
[INFO] [stdout]     |
[INFO] [stdout] 352 |                         self.hdma.length = v[0..=6].load();
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:371:61
[INFO] [stdout]     |
[INFO] [stdout] 371 |             0xFF75 => self.reg_ff75.view_bits_mut::<Lsb0>()[4..=6]
[INFO] [stdout]     |                                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/bus.rs:372:49
[INFO] [stdout]     |
[INFO] [stdout] 372 |                 .store(data.view_bits::<Lsb0>()[4..=6].load::<u8>()),
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/bus.rs:459:22
[INFO] [stdout]     |
[INFO] [stdout] 459 |             for i in 0..16 {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]  --> src/consts.rs:7:39
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const VISIBLE_RANGE: Range<u64> = 0..144;
[INFO] [stdout]   |                                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/context.rs:213:18
[INFO] [stdout]     |
[INFO] [stdout] 213 |         for _ in 0..if speed == 0 { 4 } else { 2 } {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/gameboy.rs:285:18
[INFO] [stdout]     |
[INFO] [stdout] 285 |         for y in 0..height {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/gameboy.rs:286:22
[INFO] [stdout]     |
[INFO] [stdout] 286 |             for x in 0..width {
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/io.rs:104:18
[INFO] [stdout]     |
[INFO] [stdout] 104 |         for i in 0..4 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |                     6..=7 => !0,
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |                 3..=7 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:166:17
[INFO] [stdout]     |
[INFO] [stdout] 166 |                 0..=1 => self.input_clock_select,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:170:17
[INFO] [stdout]     |
[INFO] [stdout] 170 |                 5..=7 => !0,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:171:17
[INFO] [stdout]     |
[INFO] [stdout] 171 |                 0..=4 => ctx.interrupt_flag(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:175:17
[INFO] [stdout]     |
[INFO] [stdout] 175 |                 0..=7 => ctx.interrupt_enable(),
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/io.rs:232:45
[INFO] [stdout]     |
[INFO] [stdout] 232 |                 self.input_clock_select = v[0..=1].load();
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc1.rs:79:55
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 self.rom_bank.view_bits_mut::<Lsb0>()[0..=4].store(max(1, data & 0x1F));
[INFO] [stdout]    |                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc2.rs:69:27
[INFO] [stdout]    |
[INFO] [stdout] 69 |                         v[0..=3].store(data & 0xF);
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc2.rs:71:27
[INFO] [stdout]    |
[INFO] [stdout] 71 |                         v[4..=7].store(data & 0xF);
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc3.rs:68:33
[INFO] [stdout]    |
[INFO] [stdout] 68 | ...                   0..=0 => (self.clock_data_latch.num_days_from_ce() >> 8) & 1,
[INFO] [stdout]    |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc3.rs:69:33
[INFO] [stdout]    |
[INFO] [stdout] 69 | ...                   1..=5 => !0,
[INFO] [stdout]    |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc3.rs:92:28
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 } else if (8..=0xC).contains(&data) {
[INFO] [stdout]    |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc5.rs:54:70
[INFO] [stdout]    |
[INFO] [stdout] 54 |             0x2000..=0x2FFF => self.rom_bank.view_bits_mut::<Lsb0>()[0..=7].store(data),
[INFO] [stdout]    |                                                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/mbc/mbc5.rs:55:70
[INFO] [stdout]    |
[INFO] [stdout] 55 |             0x3000..=0x3FFF => self.rom_bank.view_bits_mut::<Lsb0>()[8..=8].store(data & 1),
[INFO] [stdout]    |                                                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:222:17
[INFO] [stdout]     |
[INFO] [stdout] 222 |                 0..=1 => self.mode as u8,
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:234:17
[INFO] [stdout]     |
[INFO] [stdout] 234 |                 6..=7 => self.bg_pal[3],
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:235:17
[INFO] [stdout]     |
[INFO] [stdout] 235 |                 4..=5 => self.bg_pal[2],
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:236:17
[INFO] [stdout]     |
[INFO] [stdout] 236 |                 2..=3 => self.bg_pal[1],
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:237:17
[INFO] [stdout]     |
[INFO] [stdout] 237 |                 0..=1 => self.bg_pal[0],
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:243:21
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     6..=7 => self.obj_pal[ix][3],
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:244:21
[INFO] [stdout]     |
[INFO] [stdout] 244 |                     4..=5 => self.obj_pal[ix][2],
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:245:21
[INFO] [stdout]     |
[INFO] [stdout] 245 |                     2..=3 => self.obj_pal[ix][1],
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:246:21
[INFO] [stdout]     |
[INFO] [stdout] 246 |                     0..=1 => self.obj_pal[ix][0],
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:260:25
[INFO] [stdout]     |
[INFO] [stdout] 260 |                         0..=5 => self.bg_col_pal_addr,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:280:25
[INFO] [stdout]     |
[INFO] [stdout] 280 |                         0..=5 => self.obj_col_pal_addr,
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:362:36
[INFO] [stdout]     |
[INFO] [stdout] 362 |                 self.bg_pal[3] = v[6..=7].load();
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:363:36
[INFO] [stdout]     |
[INFO] [stdout] 363 |                 self.bg_pal[2] = v[4..=5].load();
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:364:36
[INFO] [stdout]     |
[INFO] [stdout] 364 |                 self.bg_pal[1] = v[2..=3].load();
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:365:36
[INFO] [stdout]     |
[INFO] [stdout] 365 |                 self.bg_pal[0] = v[0..=1].load();
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:371:41
[INFO] [stdout]     |
[INFO] [stdout] 371 |                 self.obj_pal[ix][3] = v[6..=7].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:372:41
[INFO] [stdout]     |
[INFO] [stdout] 372 |                 self.obj_pal[ix][2] = v[4..=5].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:373:41
[INFO] [stdout]     |
[INFO] [stdout] 373 |                 self.obj_pal[ix][1] = v[2..=3].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:374:41
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 self.obj_pal[ix][0] = v[0..=1].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:395:46
[INFO] [stdout]     |
[INFO] [stdout] 395 |                     self.bg_col_pal_addr = v[0..=5].load();
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:416:47
[INFO] [stdout]     |
[INFO] [stdout] 416 |                     self.obj_col_pal_addr = v[0..=5].load();
[INFO] [stdout]     |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:458:15
[INFO] [stdout]     |
[INFO] [stdout] 458 |     let r = v[0..=4].load::<u8>();
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:459:15
[INFO] [stdout]     |
[INFO] [stdout] 459 |     let g = v[5..=9].load::<u8>();
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:460:15
[INFO] [stdout]     |
[INFO] [stdout] 460 |     let b = v[10..=14].load::<u8>();
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:489:22
[INFO] [stdout]     |
[INFO] [stdout] 489 |             for x in 0..SCREEN_WIDTH as usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:493:22
[INFO] [stdout]     |
[INFO] [stdout] 493 |             for x in 0..SCREEN_WIDTH as usize {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:531:22
[INFO] [stdout]     |
[INFO] [stdout] 531 |         for scr_x in 0..SCREEN_WIDTH as u8 {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:570:41
[INFO] [stdout]     |
[INFO] [stdout] 570 |             let pal_num: u8 = tile_attr[0..=2].load();
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:585:56
[INFO] [stdout]     |
[INFO] [stdout] 585 |                     u16::from_le_bytes(self.bg_col_pal[b..b + 2].try_into().unwrap());
[INFO] [stdout]     |                                                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:589:56
[INFO] [stdout]     |
[INFO] [stdout] 589 |                     u16::from_le_bytes(self.bg_col_pal[pal_ix..pal_ix + 2].try_into().unwrap());
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:623:18
[INFO] [stdout]     |
[INFO] [stdout] 623 |         for i in 0..40 {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:624:26
[INFO] [stdout]     |
[INFO] [stdout] 624 |             let r = &oam[i * 4..(i + 1) * 4];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:627:17
[INFO] [stdout]     |
[INFO] [stdout] 627 |             if (y..y + obj_size).contains(&(self.ly + 16)) {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:637:25
[INFO] [stdout]     |
[INFO] [stdout] 637 |             render_objs[0..obj_count].sort_unstable();
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:640:37
[INFO] [stdout]     |
[INFO] [stdout] 640 |         for &(_, i) in &render_objs[0..obj_count] {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:641:26
[INFO] [stdout]     |
[INFO] [stdout] 641 |             let r = &oam[i * 4..(i + 1) * 4];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ppu.rs:653:20
[INFO] [stdout]     |
[INFO] [stdout] 653 |                 (v[0..=2].load(), if v[3] { 0x2000 } else { 0 })
[INFO] [stdout]     |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:678:26
[INFO] [stdout]     |
[INFO] [stdout] 678 |             for ofs_x in 0..8 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:680:22
[INFO] [stdout]     |
[INFO] [stdout] 680 |                 if !(8..w + 8).contains(&scr_x) {
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:699:69
[INFO] [stdout]     |
[INFO] [stdout] 699 | ...                   u16::from_le_bytes(self.obj_col_pal[b..b + 2].try_into().unwrap());
[INFO] [stdout]     |                                                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ppu.rs:703:50
[INFO] [stdout]     |
[INFO] [stdout] 703 | ...                   self.obj_col_pal[pal_ix..pal_ix + 2].try_into().unwrap(),
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:219:29
[INFO] [stdout]     |
[INFO] [stdout] 219 |         let header = &bytes[0x100..=0x14f];
[INFO] [stdout]     |                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:221:53
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let title = String::from_utf8_lossy(&header[0x34..=0x43]).to_string();
[INFO] [stdout]     |                                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:223:49
[INFO] [stdout]     |
[INFO] [stdout] 223 |         let manufacturer_code: [u8; 4] = header[0x3f..=0x42].try_into().unwrap();
[INFO] [stdout]     |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:230:49
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let new_licensee_code: [u8; 2] = header[0x44..=0x45].try_into().unwrap();
[INFO] [stdout]     |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:282:30
[INFO] [stdout]     |
[INFO] [stdout] 282 |         for &byte in &header[0x34..=0x4c] {
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/rom.rs:294:18
[INFO] [stdout]     |
[INFO] [stdout] 294 |             if !(0x14e..=0x14f).contains(&i) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/serial.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |             1..=6 => !0,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/util.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |         0..=2 => 0b101_u8,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/util.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |         4..=6 => 0b100_u8
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gameboy.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut audio_buffer = self.ctx.apu_mut().audio_buffer_mut();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public const
[INFO] [stdout]  --> src/consts.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const VISIBLE_RANGE: Range<u64> = 0..144;
[INFO] [stdout]   |                          ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 133 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `tgbr` (lib) due to 2 previous errors; 133 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gameboy.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut audio_buffer = self.ctx.apu_mut().audio_buffer_mut();
[INFO] [stdout]     |             ----^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 135 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "23a1639a968c47eb935c338108932fe8342ac483c8d3ebe7447f773f455bcc0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "23a1639a968c47eb935c338108932fe8342ac483c8d3ebe7447f773f455bcc0a", kill_on_drop: false }`
[INFO] [stdout] 23a1639a968c47eb935c338108932fe8342ac483c8d3ebe7447f773f455bcc0a
